package pe.gob.onpe.ejb;

import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import pe.gob.onpe.ejb.id.PerfilesOpcionesId;


/**
 * PerfilesOpciones entity.
 * 
 * @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "PERFILES_OPCIONES", schema = "SVENP", uniqueConstraints = {})
public class PerfilesOpciones implements java.io.Serializable {

	// Fields
	private static final long serialVersionUID = 150020947931912664L;
	private PerfilesOpcionesId id;
	private Opciones opciones;
	private Perfiles perfiles;

	// Constructors

	/** default constructor */
	public PerfilesOpciones() {
	}

	/** full constructor */
	public PerfilesOpciones(PerfilesOpcionesId id, Opciones opciones,
			Perfiles perfiles) {
		this.id = id;
		this.opciones = opciones;
		this.perfiles = perfiles;
	}

	// Property accessors
	@EmbeddedId
	@AttributeOverrides( {
			@AttributeOverride(name = "opcionesId", column = @Column(name = "OPCIONES_ID", unique = false, nullable = false, insertable = true, updatable = true, precision = 10, scale = 0)),
			@AttributeOverride(name = "perfilesId", column = @Column(name = "PERFILES_ID", unique = false, nullable = false, insertable = true, updatable = true, precision = 10, scale = 0)) })
	public PerfilesOpcionesId getId() {
		return this.id;
	}

	public void setId(PerfilesOpcionesId id) {
		this.id = id;
	}

	@ManyToOne(cascade = {}, fetch = FetchType.LAZY)
	@JoinColumn(name = "OPCIONES_ID", unique = false, nullable = false, insertable = false, updatable = false)
	public Opciones getOpciones() {
		return this.opciones;
	}

	public void setOpciones(Opciones opciones) {
		this.opciones = opciones;
	}

	@ManyToOne(cascade = {}, fetch = FetchType.LAZY)
	@JoinColumn(name = "PERFILES_ID", unique = false, nullable = false, insertable = false, updatable = false)
	public Perfiles getPerfiles() {
		return this.perfiles;
	}

	public void setPerfiles(Perfiles perfiles) {
		this.perfiles = perfiles;
	}

}